home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #3 / Amiga Plus CD - 2002 - No. 03.iso / AmigaPlus / Tools / Development / renderlib40 / src / rnd_memory.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-12-13  |  967 b   |  33 lines

  1.  
  2. #ifndef _RND_MEMORY_H
  3. #define _RND_MEMORY_H
  4.  
  5. #include <utility/tagitem.h>
  6. #include <exec/memory.h>
  7.  
  8. typedef struct RenderMemHandler
  9. {
  10.     APTR (*alloc)(struct RenderMemHandler *object, LONG size);
  11.     void (*free)(struct RenderMemHandler *object, APTR mem, LONG size);
  12.     struct MemHeader mh;
  13.     struct SignalSemaphore lock;
  14.     APTR object;
  15.     ULONG type;
  16.     ULONG memflags;
  17.  
  18. } RNDMH;
  19.  
  20. LIBAPI void memfill8(UBYTE *d, ULONG len, UBYTE fill);
  21. LIBAPI void memfill32(ULONG *d, ULONG len, ULONG fill);
  22. LIBAPI void TurboFillMem(APTR dst, ULONG len, ULONG val);
  23. LIBAPI void TurboCopyMem(APTR src, APTR dst, ULONG len);
  24. LIBAPI RNDMH *CreateRMHandlerA(struct TagItem *tags);
  25. LIBAPI void DeleteRMHandler(RNDMH *RNDMH);
  26. LIBAPI APTR AllocRenderMem(RNDMH *RNDMH, ULONG size);
  27. LIBAPI void FreeRenderMem(RNDMH *RNDMH, APTR mem, ULONG size);
  28. LIBAPI APTR AllocRenderVec(RNDMH *RNDMH, ULONG size);
  29. LIBAPI void FreeRenderVec(ULONG *mem);
  30. LIBAPI APTR AllocRenderVecClear(APTR mem, ULONG size);
  31.  
  32. #endif
  33.